﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DotNET4Study
{
    class FuncVSEventStudy
    {
        public static event EventHandler MyEvent;
        public static Func<string> MyFunc;
        public static List<Func<string>> MyFuncs= new List<Func<string>>();

        public static void Execute()
        {
            Console.WriteLine("以下是使用事件方式的演示");
            if (MyEvent != null)
            {
                MyEvent(null,EventArgs.Empty);
            }

            Console.WriteLine("以下是使用单独方法委托方式的演示");
            if (MyFunc != null)
            {
                MyFunc();
            }
            Console.WriteLine("以下是使用多个方法委托方式的演示");
            if (MyFuncs.Count > 0)
            {
                foreach (Func<string> func in MyFuncs)
                {
                    func();
                }
            }
        }
    }
}
